home *** CD-ROM | disk | FTP | other *** search
/ A.C.E. 2 / ACE CD 2.iso / FILES / GAMES / 1-L / COOKIE.DMS / in.adf / Cookie.AMOS / Cookie.amosSourceCode < prev    next >
Encoding:
AMOS Source Code  |  1978-02-21  |  19.9 KB  |  574 lines

  1. Break Off : Led Off : HISCORE=0 : Hide On : Curs Off : Flash Off : Sam Bank 14
  2. Fade 1 : Wait 20 : Cls 0,0,0 To 320,256 : Load "Cookiedisk1:Tune1.ABK"
  3. Unpack 4 To 2 : Wait Vbl 
  4. While Not Fire(1) : Wend 
  5. Fade 1,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8
  6. Wait 30 : Unpack 5 To 1
  7. Unpack 15 To 2
  8. Wait 300 : Fade 1,8,8,8,8 : Wait 30 : Cls 0,0,0 To 640,256
  9. Unpack 5 To 1 : Wait Vbl 
  10. Fade 1,8,4095,4095,255,3003,4095,3324,2553,128,401,674,947,1220,1750,2023,2553,895,1423,1695,2239,2767,3295,3567,4095,0,273,819,1092,1638,1911,2184,2730
  11. Wait 200
  12. Fade 2,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095,4095
  13. Wait 50
  14. Unpack 6 To 2 : Music 1 : Goto STRT1
  15. TITLOOP:
  16. Unpack 6 To 2
  17. STRT1:
  18. SCORE=0 : TUNE=1
  19. For T=1 To 300 : Wait 1
  20. If Fire(1) Then Goto GAMESTRT
  21. Next T
  22. Unpack 7 To 1 : Wait 30
  23. Unpack 8 To 2
  24. For T=1 To 500 : Wait 1
  25. If Fire(1) Then Goto GAMESTRT
  26. Next T
  27. Unpack 7 To 1 : Wait 30
  28. Unpack 9 To 2
  29. For T=1 To 400 : Wait 1
  30. If Fire(1) Then Goto GAMESTRT
  31. Next T
  32. Unpack 7 To 1 : Wait 30
  33. Goto TITLOOP
  34. GAMESTRT:
  35. LEVEL=1 : LIVES=3
  36. REQD=10
  37. STRTSCR1:
  38. REQUIRED=REQD
  39. Fade 2 : For T=63 To 0 Step -1 : Mvolume T : Wait 1 : Next T : Wait Vbl : Music Off : Mvolume 63
  40. BETWEENSCR
  41. STRTSCR:
  42. NAIL=0 : BINITEMS=LEVEL : BIN=1 : FPRESSED=0 : FD=2 : DRCTION=0
  43. Unpack 10 To 2 : Screen Close 1
  44. Double Buffer 
  45. Ink 31,9 : Text 116,238,Str$(REQUIRED)+" "
  46. 'Update Every 3
  47. Bob 1,120,80,1
  48. Channel 1 To Bob 1
  49. Amal 1,"AU(Let RA=X; Let RB=Y;); M 0,0,2"
  50. Amal On 1
  51. Bob 4,95,207,61 : Bob 5,13,208,62
  52. If LEVEL=1 Then INGREDIENTS1
  53. If LEVEL=2 Then INGREDIENTS2
  54. If LEVEL=3 Then INGREDIENTS3
  55. If LEVEL=4 Then INGREDIENTS4
  56. If LEVEL=5 Then INGREDIENTS5
  57. TESTSTICK:
  58. Limit Bob 0,0 To 320,208
  59. If Jup(1) and Jleft(1) Then FD=5 : Goto COOKIEUPLEFT
  60. If Jup(1) and Jright(1) Then FD=6 : Goto COOKIEUPRIGHT
  61. If Jdown(1) and Jright(1) Then FD=7 : Goto COOKIEDOWNRIGHT
  62. If Jdown(1) and Jleft(1) Then FD=8 : Goto COOKIEDOWNLEFT
  63. If Jup(1) Then FD=1 : Goto COOKIEUP
  64. If Jdown(1) Then FD=2 : Goto COOKIEDOWN
  65. If Jleft(1) Then FD=3 : Goto COOKIELEFT
  66. If Jright(1) Then FD=4 : Goto COOKIERIGHT
  67. Channel 1 To Bob 1 : Amal 1,"A0,(1,1); M 0,0,0" : Amal On 1 : DRCTION=0
  68. ENTEST:
  69. If Fire(1) and FPRESSED=0 Then FLOUR
  70. If Not Fire(1) Then FPRESSED=0
  71. If Bob Col(2,10 To 15) Then BOMB=1 : INGREDIENTHIT
  72. If Bob Col(3,10 To 15) Then BOMB=2 : INGREDIENTHIT
  73. If Bob Col(2,7 To 7) Then BOMB=1 : NAILHIT
  74. If Bob Col(3,7 To 7) Then BOMB=2 : NAILHIT
  75. If Bob Col(2,6 To 6) Then BOMB=1 : CRAPHIT
  76. If Bob Col(3,6 To 6) Then BOMB=2 : CRAPHIT
  77. If Bob Col(5,10 To 15) Then RUBBISHED
  78. If Bob Col(4,10 To 15) Then BOWLED
  79. If Bob Col(4,6 To 6) Then CRAPBOWLED
  80. If Bob Col(5,6 To 6) Then CRAPRUBBISHED
  81. If Bob Col(4,7 To 7) Then NAILBOWLED
  82. If Bob Col(5,7 To 7) Then NAILRUBBISHED
  83. If Not Chanmv(0) Then BINMONSTER
  84. If Bob Col(2,10 To 15) Then BOMB=1 : INGREDIENTHIT
  85. If Bob Col(3,10 To 15) Then BOMB=2 : INGREDIENTHIT
  86. If CHUCKED=1 and Not Chanan(0) Then CHUCKED=2
  87. If CHUCKED=2 Then THROW
  88. If NAIL=0 Then NAILS
  89. Amreg(0)=X Bob(1) : Amreg(1)=Y Bob(1)
  90. If REQUIRED=0 Then Goto ENSCR
  91. If Bob Col(1,5 To 15) Then Goto DEATH
  92. Goto TESTSTICK
  93. ENSCR:
  94. For T=2 To 8 : Amal Off T : Bob Off T : Next T
  95. For T=10 To 15 : Amal Off T : Bob Off T : Next T
  96. Amal Off 0 : Bob Off 0 : Amal Off 1
  97. For T=5000 To 14000 Step 500 : Sam Play 2,12,T : Wait 2 : Sam Play 0,12,T+1000 : Wait 2 : Next T
  98. While Chanmv(9) : Wend 
  99. Amal Off 9 : Bob Off 9 : Wait 50
  100. LEVEL=LEVEL+1
  101. If LEVEL=6 Then LEVEL=1 : REQD=REQD+10 : CAKE
  102. If REQD>50 Then REQD=50
  103. Wait 50
  104. Fade 1 : Wait 30
  105. Goto STRTSCR1
  106. COOKIEUP:
  107. If DRCTION=1 Then Goto ENTEST
  108. Channel 1 To Bob 1
  109. Amal 1,"Let R0=Y; A0,(2,3)(3,3)(4,3)(3,3); M 0,0-R0,R0/2"
  110. Amal On 1
  111. DRCTION=1 : Goto ENTEST
  112. COOKIEDOWN:
  113. If DRCTION=2 Then Goto ENTEST
  114. Channel 1 To Bob 1
  115. Amal 1,"Let R0=180-Y; A0,(2,3)(3,3)(4,3)(3,3); M 0,R0,R0/2"
  116. Amal On 1
  117. DRCTION=2 : Goto ENTEST
  118. COOKIELEFT:
  119. If DRCTION=3 Then Goto ENTEST
  120. Channel 1 To Bob 1
  121. Amal 1,"Let R0=X; A0,(2,3)(3,3)(4,3)(3,3); M 0-R0,0,R0/2"
  122. Amal On 1
  123. DRCTION=3 : Goto ENTEST
  124. COOKIERIGHT:
  125. If DRCTION=4 Then Goto ENTEST
  126. Channel 1 To Bob 1
  127. Amal 1,"Let R0=245-X; A0,(2,3)(3,3)(4,3)(3,3); M R0,0,R0/2"
  128. Amal On 1
  129. DRCTION=4 : Goto ENTEST
  130. COOKIEUPLEFT:
  131. If DRCTION=5 Then Goto ENTEST
  132. Channel 1 To Bob 1
  133. Amal 1,"A0,(2,3)(3,3)(4,3)(3,3); Let R0=Y; Let R1=X; If R0>R1 Jump A; Let R1=R0; M 0-R1,0-R0,R1/2; Jump B; A: Let R0=R1; M 0-R1,0-R0,R0/2; B: "
  134. Amal On 1 : DRCTION=5 : Goto ENTEST
  135. COOKIEUPRIGHT:
  136. If DRCTION=6 Then Goto ENTEST
  137. Channel 1 To Bob 1
  138. Amal 1,"A0,(2,3)(3,3)(4,3)(3,3); Let R0=Y; Let R1=245-X; If R0>R1 Jump A; Let R1=R0; M R1,0-R0,R1/2; Jump B; A: Let R0=R1; M R1,0-R0,R0/2; B: "
  139. Amal On 1 : DRCTION=6 : Goto ENTEST
  140. COOKIEDOWNRIGHT:
  141. If DRCTION=7 Then Goto ENTEST
  142. Channel 1 To Bob 1
  143. Amal 1,"A0,(2,3)(3,3)(4,3)(3,3); Let R0=180-Y; Let R1=245-X; If R0>R1 Jump A; Let R1=R0; M R1,R0,R1/2; Jump B; A: Let R0=R1; M R1,R0,R0/2; B: "
  144. Amal On 1 : DRCTION=7 : Goto ENTEST
  145. COOKIEDOWNLEFT:
  146. If DRCTION=8 Then Goto ENTEST
  147. Channel 1 To Bob 1
  148. Amal 1,"A0,(2,3)(3,3)(4,3)(3,3); Let R0=180-Y; Let R1=X; If R0>R1 Jump A; Let R1=R0; M 0-R1,R0,R1/2; Jump B; A: Let R0=R1; M 0-R1,R0,R0/2; B: "
  149. Amal On 1 : DRCTION=8 : Goto ENTEST
  150. Procedure FLOUR
  151. Shared FD,FPRESSED,FD1,FD2
  152. If Chanmv(2) and Chanmv(3) Then Pop Proc
  153. FPRESSED=1
  154. FX=X Bob(1)+2 : FY=Y Bob(1)+10
  155. A$="A0,(5,2)(6,2)(7,2)(8,2);"
  156. If FD=1 Then A$=A$+"Let R0=Y; M 0,0-R0,R0/5;"
  157. If FD=2 Then A$=A$+"Let R0=195-Y; M 0,R0,R0/5;"
  158. If FD=3 Then A$=A$+"Let R0=X; M 0-R0,0,R0/5;"
  159. If FD=4 Then A$=A$+"Let R0=250-X; M R0,0,R0/5;"
  160. If FD=5 Then A$=A$+"Let R0=Y; Let R1=X; If R0>R1 Jump A; Let R1=R0; M 0-R1,0-R0,R1/4; Jump B; A: Let R0=R1; M 0-R1,0-R0,R0/4; B: "
  161. If FD=6 Then A$=A$+"Let R0=Y; Let R1=250-X; If R0>R1 Jump A; Let R1=R0; M R1,0-R0,R1/4; Jump B; A: Let R0=R1; M R1,0-R0,R0/4; B: "
  162. If FD=7 Then A$=A$+"Let R0=195-Y; Let R1=250-X; If R0>R1 Jump A; Let R1=R0; M R1,R0,R1/4; Jump B; A: Let R0=R1; M R1,R0,R0/4; B: "
  163. If FD=8 Then A$=A$+"Let R0=195-Y; Let R1=X; If R0>R1 Jump A; Let R1=R0; M 0-R1,R0,R1/4; Jump B; A: Let R0=R1; M 0-R1,R0,R0/4; B: "
  164. A$=A$+"Let X=-200; Let Y=-50; M 0,0,1"
  165. If Chanmv(2) Then Goto SECONDFLOUR
  166. Bob 2,FX,FY,5 : Channel 2 To Bob 2
  167. Amal 2,A$ : Amal On 2 : Sam Play 8,4,15000 : Wait Vbl 
  168. FD1=FD
  169. Pop Proc
  170. SECONDFLOUR:
  171. If Chanmv(3) Then Pop Proc
  172. Bob 3,FX,FY,5 : Channel 3 To Bob 3
  173. Amal 3,A$ : Amal On 3 : Sam Play 8,4,15000 : Wait Vbl 
  174. FD2=FD
  175. End Proc
  176. Procedure INGREDIENTS1
  177. Shared INGX,INGY,ING,B$,C$,D$,E$,F$,G$,H$
  178. Paste Bob 265,13,10
  179. ING=37 : INGX=280 : INGY=20
  180. For T=10 To 15 : Bob T,-50,-50,36 : Channel T To Bob T : Next T
  181. B$="Let X=280; Let Y=20; A0,(35,4)(36,4); M-100,150,75;"
  182. B$=B$+"Loop: M -50,-25,25; M -50,25,25; M -20,-10,10; M -20,-20,15; M -10,-20,10; M 0,-20,10; M 10,-20,10;"
  183. B$=B$+"M 20,-20,15; M 20,-10,10; M 50,25,25; M 50,-25,25"
  184. B$=B$+"M 20,10,10; M 20,20,15; M 10,20,10; M 0,20,10; M -10,20,10; M -20,20,15; M -20,10,15; Jump Loop"
  185. C$="M 0,0,50;"+B$
  186. D$="M 0,0,75;"+B$
  187. E$="M 0,0,100;"+B$
  188. F$="M 0,0,125;"+B$
  189. G$="M 0,0,150;"+B$
  190. H$="M 0,0,175;"+B$
  191. Amal 10,C$ : Amal 11,D$ : Amal 12,E$ : Amal 13,F$ : Amal 14,G$ : Amal 15,H$
  192. For T=10 To 15 : Amal On T : Next T
  193. End Proc
  194. Procedure INGREDIENTS2
  195. Shared INGX,INGY,ING,B$,C$,D$,E$,F$,G$,H$
  196. Paste Bob 265,49,10
  197. ING=43 : INGX=280 : INGY=55
  198. For T=10 To 15 : Bob T,-50,-50,36 : Channel T To Bob T : Next T
  199. B$="Let X=280; Let Y=55; A0,(41,4)(42,4); M -80,40,40;"
  200. B$=B$+"Loop: For R0=1 To 3; M -50,0,25; M -20,-20,15; M 0,-20,10; M 20,-20,15; M 10,0,5; M 20,20,15; M 0,20,10; M -20,20,15; Next R0;  "
  201. B$=B$+"M -40,0,20; M -20,20,15; M 0,30,15; M 20,20,15; "
  202. B$=B$+"For R0=1 To 3; M 50,0,25; M 20,-20,15; M 0,-20,10; M -20,-20,15; M -10,0,5; M -20,20,15; M 0,20,10; M 20,20,15; Next R0;  "
  203. B$=B$+"M 40,0,20; M 20,-20,15; M 0,-30,15; M -20,-20,15; Jump Loop"
  204. C$="M 0,0,50;"+B$
  205. D$="M 0,0,75;"+B$
  206. E$="M 0,0,100;"+B$
  207. F$="M 0,0,125;"+B$
  208. G$="M 0,0,150;"+B$
  209. H$="M 0,0,175;"+B$
  210. Amal 10,C$ : Amal 11,D$ : Amal 12,E$ : Amal 13,F$ : Amal 14,G$ : Amal 15,H$
  211. For T=10 To 15 : Amal On T : Next T
  212. End Proc
  213. Procedure INGREDIENTS3
  214. Shared INGX,INGY,ING,B$,C$,D$,E$,F$,G$,H$
  215. Paste Bob 265,85,10
  216. ING=49 : INGX=280 : INGY=90
  217. For T=10 To 15 : Bob T,-50,-50,36 : Channel T To Bob T : Next T
  218. B$="Let X=280; Let Y=90; A0,(47,4)(48,4); M -60,-60,40; Loop: For R0=1 To 2; M -20,0,10; M -20,20,15; M 0,80,40; M 20,20,15; M 20,0,10; M 20,-20,15; M 0,-80,40; M -20,-20,15; Next R0; "
  219. B$=B$+"M -20,0,10; M -140,100,70;"
  220. B$=B$+"M -20,20,15; M -20,0,10; M -20,-20,15; M 0,-80,40; M 20,-20,15; M 20,0,10;"
  221. B$=B$+"For R0=1 To 2; M 20,20,15; M 0,80,40; M -20,20,15; M -20,0,10; M -20,-20,15; M 0,-80,40; M 20,-20,15; M 20,0,10; Next R0;"
  222. B$=B$+"M 140,100,70; M 20,20,15; M 20,0,10; M 20,-20,15; M 0,-80,40; M -20,-20,15; P; Jump Loop"
  223. C$="M 0,0,50;"+B$
  224. D$="M 0,0,75;"+B$
  225. E$="M 0,0,100;"+B$
  226. F$="M 0,0,125;"+B$
  227. G$="M 0,0,150;"+B$
  228. H$="M 0,0,175;"+B$
  229. Amal 10,C$ : Amal 11,D$ : Amal 12,E$ : Amal 13,F$ : Amal 14,G$ : Amal 15,H$
  230. For T=10 To 15 : Amal On T : Next T
  231. End Proc
  232. Procedure INGREDIENTS4
  233. Shared INGX,INGY,ING,B$,C$,D$,E$,F$,G$,H$
  234. Paste Bob 265,121,10
  235. ING=46 : INGX=280 : INGY=125
  236. For T=10 To 15 : Bob T,-50,-50,36 : Channel T To Bob T : Next T
  237. B$="Let X=280; Let Y=125; A0,(44,6)(45,6); M -60,-100,40;"
  238. B$=B$+"Loop: For R0=1 To 3; M -10,-10,7; M -12,0,6; M -10,10,7; M 0,120,60; M -10,10,7; M -12,0,6; M -10,-10,7; M 0,-120,60; Next R0; "
  239. B$=B$+"For R0=1 To 3; M 10,-10,7; M 12,0,6; M 10,10,7; M 0,120,60; M 10,10,7; M 12,0,6; M 10,-10,7; M 0,-120,60; Next R0; "
  240. B$=B$+"P; Jump Loop; "
  241. C$="M 0,0,50;"+B$
  242. D$="M 0,0,75;"+B$
  243. E$="M 0,0,100;"+B$
  244. F$="M 0,0,125;"+B$
  245. G$="M 0,0,150;"+B$
  246. H$="M 0,0,175;"+B$
  247. Amal 10,C$ : Amal 11,D$ : Amal 12,E$ : Amal 13,F$ : Amal 14,G$ : Amal 15,H$
  248. For T=10 To 15 : Amal On T : Next T
  249. End Proc
  250. Procedure INGREDIENTS5
  251. Shared INGX,INGY,ING,B$,C$,D$,E$,F$,G$,H$
  252. Paste Bob 265,157,10
  253. ING=40 : INGX=280 : INGY=160
  254. For T=10 To 15 : Bob T,-50,-50,36 : Channel T To Bob T : Next T
  255. B$="Let X=280; Let Y=160; A0,(38,4)(39,4); M -60,-140,70; "
  256. B$=B$+"Loop: M -10,-10,5; M -60,30,30; M -60,-30,30; M -60,30,30; M -20,20,10; M 0,10,5; M 20,20,10; M 60,30,30; M 60,-30,30; M 60,-30,30; M 20,20,10; M 0,10,5; M -20,20,10; "
  257. B$=B$+"M -60,30,30; M -60,-30,30; M -60,30,30; M -20,20,10; M 0,10,5; M 20,20,10; M 60,-30,30; M 60,30,30; M 60,-30,30; "
  258. B$=B$+"M 30,-60,30; M -20,-80,40; Jump Loop"
  259. C$="M 0,0,50;"+B$
  260. D$="M 0,0,75;"+B$
  261. E$="M 0,0,100;"+B$
  262. F$="M 0,0,125;"+B$
  263. G$="M 0,0,150;"+B$
  264. H$="M 0,0,175;"+B$
  265. Amal 10,C$ : Amal 11,D$ : Amal 12,E$ : Amal 13,F$ : Amal 14,G$ : Amal 15,H$
  266. For T=10 To 15 : Amal On T : Next T
  267. End Proc
  268. Procedure RUBBISHED
  269. Shared BINITEMS,B$,C$,D�,E$,F$,G$,H$,ING
  270. BINITEMS=BINITEMS+1
  271. INGTHROWN=0
  272. For T=10 To 15
  273. If Bob Col(5,T To T) Then INGTHROWN=T
  274. Next T
  275. If INGTHROWN=0 Then Pop Proc
  276. A$="Let X=-50; Let Y=-50;"
  277. Sam Play 1,3,20000
  278. Channel INGTHROWN To Bob INGTHROWN
  279. If INGTHROWN=10 Then Amal INGTHROWN,A$+C$
  280. If INGTHROWN=11 Then Amal INGTHROWN,A$+D$
  281. If INGTHROWN=12 Then Amal INGTHROWN,A$+E$
  282. If INGTHROWN=13 Then Amal INGTHROWN,A$+F$
  283. If INGTHROWN=14 Then Amal INGTHROWN,A$+G$
  284. If INGTHROWN=15 Then Amal INGTHROWN,A$+H$
  285. Amal On INGTHROWN
  286. End Proc
  287. Procedure BOWLED
  288. Shared SCORE,LEVEL,B$,C$,D�,E$,F$,G$,H$,ING,REQUIRED
  289. INGTHROWN=0
  290. For T=10 To 15
  291. If Bob Col(4,T To T) Then INGTHROWN=T
  292. Next T
  293. If INGTHROWN=0 Then Pop Proc
  294. SX=X Bob(INGTHROWN)
  295. SX=SX-3
  296. Channel INGTHROWN To Bob INGTHROWN
  297. I$="Let X=X-3; Let Y=189; A1,(63,3)(64,3)(65,3)(66,3)(67,3)(68,3)(69,3)(70,3)(71,3)(72,3)(73,3)(74,3)(75,3)(76,3); M 0,0,42; Let X=-50; Let Y=-50; "
  298. I$="Let X=X-50; Let Y=-50;"
  299. If INGTHROWN=10 Then Amal INGTHROWN,I$+C$
  300. If INGTHROWN=11 Then Amal INGTHROWN,I$+D$
  301. If INGTHROWN=12 Then Amal INGTHROWN,I$+E$
  302. If INGTHROWN=13 Then Amal INGTHROWN,I$+F$
  303. If INGTHROWN=14 Then Amal INGTHROWN,I$+G$
  304. If INGTHROWN=15 Then Amal INGTHROWN,I$+H$
  305. Amal On INGTHROWN
  306. Bob 9,SX,190,76
  307. Channel 9 To Bob 9
  308. Amal 9,"A1,(63,3)(64,3)(65,3)(66,3)(67,3)(68,3)(69,3)(70,3)(71,3)(72,3)(73,3)(74,3)(75,3)(76,3); M 0,0,42; Let X=-50; Let Y=-50; "
  309. Amal On 9
  310. Sam Play 6,6,8000
  311. REQUIRED=REQUIRED-1 : If REQUIRED<0 Then REQUIRED=0
  312. REQ$=Str$(REQUIRED)
  313. Ink 31,9 : If REQUIRED>9 Then Text 116,238,REQ$ Else Text 112,238," "+REQ$+" "
  314. SCORE=SCORE+(LEVEL*20)
  315. End Proc
  316. Procedure NAILBOWLED
  317. Shared NAIL,REQUIRED
  318. SX=X Bob(7)
  319. SX=SX-3
  320. Amal Off 7 : Bob 7,-50,-50,29
  321. Bob 9,SX,190,76
  322. Channel 9 To Bob 9
  323. Amal 9,"A1,(63,3)(64,3)(65,3)(66,3)(67,3)(68,3)(69,3)(70,3)(71,3)(72,3)(73,3)(74,3)(75,3)(76,3); M 0,0,42; Let X=-50; Let Y=-50; "
  324. Amal On 9
  325. Sam Play 6,5,8000
  326. NAIL=0
  327. REQUIRED=REQUIRED+5 : If REQUIRED>99 Then REQUIRED=99
  328. REQ$=Str$(REQUIRED)
  329. Ink 31,9 : If REQUIRED>9 Then Text 116,238,REQ$ Else Text 112,238," "+REQ$+" "
  330. End Proc
  331. Procedure CRAPBOWLED
  332. Shared CHUCKED,REQUIRED
  333. SX=X Bob(6)
  334. SX=SX-3
  335. Amal Off 6 : Bob 6,-50,-50,29
  336. Bob 9,SX,190,76
  337. Channel 9 To Bob 9
  338. Amal 9,"A1,(63,3)(64,3)(65,3)(66,3)(67,3)(68,3)(69,3)(70,3)(71,3)(72,3)(73,3)(74,3)(75,3)(76,3); M 0,0,42; Let X=-50; Let Y=-50; "
  339. Amal On 9
  340. Sam Play 6,5,8000
  341. CHUCKED=0
  342. REQUIRED=REQUIRED+5 : If REQUIRED>99 Then REQUIRED=99
  343. REQ$=Str$(REQUIRED)
  344. Ink 31,9 : If REQUIRED>9 Then Text 116,238,REQ$ Else Text 112,238," "+REQ$+" "
  345. End Proc
  346. Procedure CRAPRUBBISHED
  347. Shared CHUCKED,SCORE
  348. Amal Off 6 : Bob 6,-50,-50,29
  349. CHUCKED=0
  350. SCORE=SCORE+25
  351. Sam Play 1,3,20000
  352. End Proc
  353. Procedure NAILRUBBISHED
  354. Shared NAIL,SCORE
  355. Amal Off 7 : Bob 7,-50,-50,29
  356. NAIL=0
  357. SCORE=SCORE+25
  358. Sam Play 1,3,20000
  359. End Proc
  360. Procedure INGREDIENTHIT
  361. Shared INGHIT,ING,BOMB,FD1,FD2,SCORE
  362. INGHIT=0
  363. For T=10 To 15 : If Bob Col(T,BOMB+1 To BOMB+1) Then INGHIT=T
  364. Next T
  365. If INGHIT=0 Then Pop Proc
  366. Amal Off INGHIT : Bob Off BOMB+1
  367. If BOMB=1 Then ID=FD1 Else ID=FD2
  368. HUP=0 : HLEFT=0
  369. If ID=1 or ID=5 or ID=6 Then HUP=-2
  370. If ID=2 or ID=7 or ID=8 Then HUP=2
  371. If ID=3 or ID=5 or ID=8 Then HLEFT=-2
  372. If ID=4 or ID=6 or ID=7 Then HLEFT=2
  373. Channel INGHIT To Bob INGHIT
  374. A$="A0,("+Str$(ING)+",1); Let R0="+Str$(HUP)+"; Let R1="+Str$(HLEFT)+";"
  375. A$=A$+"Loop: If X<1 Jump A; If X>250 Jump B; If Y>200 Jump C; If Y<1 Jump D;  "
  376. A$=A$+"E: Let X=X+R1; Let Y=Y+R0; P; Jump Loop; "
  377. A$=A$+"A: Let R1=2; P; Jump F; B: Let R1=-2; P; Jump F; "
  378. A$=A$+"C: Let R0=-2; P; Jump F; D: Let R0=2; P; Jump F; "
  379. A$=A$+"F: If R0=0 Jump G; If R1=0 Jump H; Jump E; "
  380. A$=A$+"G: Let R0=-2; Jump E; H: Let R1=-2; Jump E; "
  381. Amal INGHIT,A$
  382. Amal On INGHIT
  383. Sam Play 9,9,20000
  384. SCORE=SCORE+10
  385. End Proc
  386. Procedure CRAPHIT
  387. Shared ITEM,BOMB,FD1,FD2
  388. If ITEM=29 Then ITEM=30
  389. If ITEM=31 Then ITEM=32
  390. Amal Off 6 : Bob Off BOMB+1
  391. If BOMB=1 Then ID=FD1 Else ID=FD2
  392. HUP=0 : HLEFT=0
  393. If ID=1 or ID=5 or ID=6 Then HUP=-2
  394. If ID=2 or ID=7 or ID=8 Then HUP=2
  395. If ID=3 or ID=5 or ID=8 Then HLEFT=-2
  396. If ID=4 or ID=6 or ID=7 Then HLEFT=2
  397. Channel 6 To Bob 6
  398. A$="A0,("+Str$(ITEM)+",1); Let R0="+Str$(HUP)+"; Let R1="+Str$(HLEFT)+";"
  399. A$=A$+"Loop: If X<1 Jump A; If X>250 Jump B; If Y>200 Jump C; If Y<1 Jump D;  "
  400. A$=A$+"E: Let X=X+R1; Let Y=Y+R0; P; Jump Loop; "
  401. A$=A$+"A: Let R1=2; P; Jump F; B: Let R1=-2; P; Jump F; "
  402. A$=A$+"C: Let R0=-2; P; Jump F; D: Let R0=2; P; Jump F; "
  403. A$=A$+"F: If R0=0 Jump G; If R1=0 Jump H; Jump E; "
  404. A$=A$+"G: Let R0=-2; Jump E; H: Let R1=-2; Jump E; "
  405. Amal 6,A$
  406. Amal On 6
  407. Sam Play 9,10,12000
  408. End Proc
  409. Procedure NAILHIT
  410. Shared NAILITEM,BOMB,FD1,FD2
  411. If NAILITEM=33 Then NAILITEM=34
  412. If NAILITEM=59 Then NAILITEM=60
  413. Amal Off 7 : Bob Off BOMB+1
  414. If BOMB=1 Then ID=FD1 Else ID=FD2
  415. HUP=0 : HLEFT=0
  416. If ID=1 or ID=5 or ID=6 Then HUP=-2
  417. If ID=2 or ID=7 or ID=8 Then HUP=2
  418. If ID=3 or ID=5 or ID=8 Then HLEFT=-2
  419. If ID=4 or ID=6 or ID=7 Then HLEFT=2
  420. Channel 7 To Bob 7
  421. A$="A0,("+Str$(NAILITEM)+",1); Let R0="+Str$(HUP)+"; Let R1="+Str$(HLEFT)+";"
  422. A$=A$+"Loop: If X<1 Jump A; If X>250 Jump B; If Y>200 Jump C; If Y<1 Jump D;  "
  423. A$=A$+"E: Let X=X+R1; Let Y=Y+R0; P; Jump Loop; "
  424. A$=A$+"A: Let R1=2; P; Jump F; B: Let R1=-2; P; Jump F; "
  425. A$=A$+"C: Let R0=-2; P; Jump F; D: Let R0=2; P; Jump F; "
  426. A$=A$+"F: If R0=0 Jump G; If R1=0 Jump H; Jump E; "
  427. A$=A$+"G: Let R0=-2; Jump E; H: Let R1=-2; Jump E; "
  428. Amal 7,A$
  429. Amal On 7
  430. Sam Play 9,10,12000
  431. End Proc
  432. Procedure BINMONSTER
  433. Shared BIN,MONSTER,CHUCKED,BINITEMS
  434. If CHUCKED>0 Then Pop Proc
  435. If BINITEMS<1 Then Pop Proc
  436. If Chanan(0) Then Pop Proc
  437. If Rnd(500)<490 Then Pop Proc
  438. CHUCKED=1 : BINITEMS=BINITEMS-1
  439. BIN=BIN+1 : If BIN=5 Then BIN=1
  440. If BIN=1 Then BMX=3
  441. If BIN=2 Then BMX=42
  442. If BIN=3 Then BMX=191
  443. If BIN=4 Then BMX=230
  444. Bob 0,BMX,183,76
  445. Channel 0 To Bob 0
  446. BM$="A1,(11,3)(12,3)(13,3)(14,3)(15,3)(16,3)(17,3)(18,20)(19,40)(18,3)(20,40)(18,30)(17,3)(16,3)(15,3)(14,3)(13,3)(12,3)(11,3)(76,1); M 0,0,180; "
  447. Amal 0,BM$
  448. Amal On 0
  449. MONSTER=1
  450. Wait Vbl 
  451. End Proc
  452. Procedure THROW
  453. Shared BIN,CHUCKED,ITEM
  454. CHUCKED=3
  455. If BIN=1 Then CX=3
  456. If BIN=2 Then CX=42
  457. If BIN=3 Then CX=191
  458. If BIN=4 Then CX=230
  459. If Rnd(10)>5 Then ITEM=29 Else ITEM=31
  460. HUP=-3 : HLEFT=0
  461. Bob 6,CX,185,ITEM
  462. Channel 6 To Bob 6
  463. A$="A0,("+Str$(ITEM)+",1); Let R0="+Str$(HUP)+"; Let R1="+Str$(HLEFT)+";"
  464. A$=A$+"Loop: If X<1 Jump A; If X>245 Jump B; If Y>200 Jump C; If Y<1 Jump D;  "
  465. A$=A$+"E: Let X=X+R1; Let Y=Y+R0; P; Jump Loop; "
  466. A$=A$+"A: Let R1=2; P; Jump F; B: Let R1=-2; P; Jump F; "
  467. A$=A$+"C: Let R0=-2; P; Jump F; D: Let R0=2; P; Jump F; "
  468. A$=A$+"F: If R0=0 Jump G; If R1=0 Jump H; Jump E; "
  469. A$=A$+"G: Let R0=-2; Jump E; H: Let R1=-2; Jump E; "
  470. Amal 6,A$ : Amal On 6
  471. Sam Play 2,7,10000
  472. End Proc
  473. Procedure NAILS
  474. Shared INGX,INGY,NAIL,NAILITEM
  475. If Rnd(500)<490 Then Pop Proc
  476. If Rnd(500)<450 Then Pop Proc
  477. If Rnd(10)>5 Then NAILITEM=33 Else NAILITEM=59
  478. Bob 7,INGX,INGY,NAILITEM
  479. Channel 7 To Bob 7
  480. A$="A0,("+Str$(NAILITEM)+",1); Loop: If RA<X Jump A; If RA>X Jump B; E: If RB>Y Jump C; If RB<Y Jump D; P; Jump Loop;  "
  481. A$=A$+"A: P; Let X=X-1; Jump E; "
  482. A$=A$+"B: P; Let X=X+1; Jump E; "
  483. A$=A$+"C: Let Y=Y+1; P; Jump Loop; "
  484. A$=A$+"D: Let Y=Y-1; P; Jump Loop; "
  485. Amal 7,A$ : Amal On 7
  486. NAIL=1
  487. End Proc
  488. Procedure CAKE
  489. Shared TUNE
  490. For T=2 To 15 : Amal Off T : Bob Off T : Next T
  491. Amal Off 0 : Bob Off 0
  492. If TUNE<>2 Then Load "Cookiedisk1:Tune2.ABK" : Wait Vbl 
  493. TUNE=2
  494. Music 1 : Wait 50 : Bob 2,81,183,50
  495. Channel 2 To Bob 2
  496. Amal 2,"A1,(50,3)(51,3)(52,3)(53,3)(54,3)(55,3)(56,3)(57,3); M 0,0,30;"
  497. Amal On 2 : Wait Vbl 
  498. While Chanmv(2) : Wend 
  499. Bob 3,120,-33,58 : Channel 3 To Bob 3
  500. Amal 3,"A0,(58,1); M 0,200,50; M 0,-4,4; M 0,1,1;"
  501. Amal On 3 : Wait Vbl 
  502. While Chanmv(3) : Wend 
  503. For T=1 To 1050
  504. If Fire(1) Then For S=63 To 0 Step -1 : Mvolume(S) : Wait 1 : Next S : Music Off : Mvolume 63 : Pop Proc
  505. Wait 1 : Next T
  506. Music Off 
  507. End Proc
  508. Procedure BETWEENSCR
  509. Shared LEVEL
  510. Unpack 11 To 1 : Wait Vbl : Unpack 12 To 2 : Wait Vbl : Double Buffer 
  511. If LEVEL=1 Then AN1=35 : AN2=36
  512. If LEVEL=2 Then AN1=41 : AN2=42
  513. If LEVEL=3 Then AN1=47 : AN2=48
  514. If LEVEL=4 Then AN1=44 : AN2=45
  515. If LEVEL=5 Then AN1=38 : AN2=39
  516. Bob 1,330,110,AN1
  517. Bob 2,540,102,1
  518. Channel 1 To Bob 1 : Channel 2 To Bob 2
  519. Amal 1,"A0,("+Str$(AN1)+",5)("+Str$(AN2)+",5); M -400,0,200;"
  520. Amal 2,"A0,(2,3)(3,3)(4,3)(3,3); M -600,0,200;"
  521. Wait 50
  522. Amal On 1 : Amal On 2 : Wait Vbl 
  523. While Chanmv(2)
  524. Sam Play 6,11,65000 : Wait Vbl : Wait 8 : Wend 
  525. Wait 100
  526. Fade 1 : Wait 25
  527. Fade 1 : Wait 30 : Unpack 11 To 1 : Wait Vbl 
  528. End Proc
  529. DEATH:
  530. Wait Vbl : Limit Bob 0,0 To 320,208
  531. For T=0 To 15 : Amal Off T : Next T
  532. Wait 50
  533. For T=2 To 15 : Bob Off T : Next T : Bob Off 0
  534. Wait Vbl : Bob 2,X Bob(1),Y Bob(1),77
  535. Channel 2 To Bob 2 : Channel 1 To Bob 1
  536. Amal 1,"A0,(78,1); M 0,0,50; A0,(79,1); M 0,200,100; " : Amal 2,"A0,(77,1); M 0,-200,50"
  537. Amal On 1 : Amal On 2 : Wait Vbl 
  538. For T=17000 To 5000 Step -500 : Sam Play 9,8,T : Wait 6 : Next T
  539. While Chanmv(1) : Wend 
  540. LIVES=LIVES-1
  541. If LIVES=0 Then Goto GAMEOVER
  542. Fade 1 : Wait 30
  543. Unpack 11 To 1 : Wait Vbl 
  544. Goto STRTSCR
  545. GAMEOVER:
  546. Wait Vbl 
  547. For T=0 To 15 : Amal Off T : Bob T,-50,-50,79 : Next T : Wait Vbl 
  548. G=55 : Wait Vbl 
  549. A$="M 0,150,25; M 0,1,1; M 0,-1,1; For R0=1 To 2; M 0,-8,4; M 0,-4,4; M 0,-2,4; M 0,-1,4; M 0,1,4; M 0,2,4; M 0,4,4; M 0,8,4; M 0,4,4; M 0,2,4; M 0,1,4; M 0,-1,4; M 0,-2,4; M 0,-4,4; Next R0; "
  550. A$=A$+"M 0,-4,4; M 0,-2,4; M 0,-1,4; M 0,1,4; M 0,2,4; M 0,4,4; M 0,2,4; M 0,1,4; M 0,-1,4; M 0,-2,4; M 0,-1,4; M 0,1,4; M 0,2,4; M 0,1,4; M 0,-1,4; M 0,1,4; "
  551. For T=1 To 8
  552. Bob T+1,G,-50,79+T
  553. G=G+18 : If T=4 Then G=G+5
  554. Channel T+1 To Bob T+1 : Amal T+1,A$
  555. Next T : Wait Vbl 
  556. For T=1 To 8 : Amal On T+1 : Wait 5 : Next T
  557. Wait Vbl 
  558. While Chanmv(9) : Wend 
  559. Wait 50 : Fade 1 : Wait 30
  560. Unpack 11 To 1 : Unpack 13 To 2
  561. Paper 20 : Ink 0 : Pen 1
  562. If SCORE>HISCORE Then HISCORE=SCORE
  563. A$="SCORE"+Str$(SCORE) : B$="HISCORE"+Str$(HISCORE)
  564. Locate 0,25 : Centre A$
  565. Locate 0,27 : Centre B$
  566. Curs Off 
  567. Paint 2,2,1
  568. Wait Vbl : If TUNE=2 Then Load "Cookiedisk1:Tune1.ABK" : TUNE=1
  569. For T=1 To 300
  570. If Fire(1) Then Goto RESTRT
  571. Wait 1 : Next T
  572. RESTRT:
  573. Fade 1 : Wait 30 : Unpack 11 To 1
  574. Unpack 6 To 2 : Music 1 : Goto STRT1